Amazon AWS Lambda একটি serverless কম্পিউটিং পরিষেবা যা আপনাকে কোড চালানোর জন্য কোনও সার্ভার পরিচালনা করতে দেয় না। AWS Lambda ব্যবহার করে আপনি বিভিন্ন AWS পরিষেবা, যেমন Amazon DocumentDB, এর সাথে সহজে ইন্টিগ্রেট করতে পারেন। DocumentDB-কে Lambda ফাংশনের সাথে সংযুক্ত করে আপনি অটোমেটেড ডেটা প্রসেসিং, অ্যাকশন ট্রিগারিং, ডেটাবেস অপারেশন (যেমন, ইনসার্ট, আপডেট, ডিলিট) এবং সোর্স থেকে ডেটা সংগ্রহ সহ বিভিন্ন কার্যক্রম পরিচালনা করতে পারেন।
এখানে AWS Lambda এর সাথে DocumentDB Integration করার ধাপগুলি বর্ণনা করা হয়েছে।
প্রথমে একটি Lambda ফাংশন তৈরি করতে হবে যা DocumentDB এর সাথে যোগাযোগ করবে এবং ডেটাবেসে প্রয়োজনীয় অপারেশন সম্পাদন করবে।
ধাপ:
Lambda ফাংশনে DocumentDB এর সাথে কানেক্ট করতে, আপনি প্রথমে MongoDB-কে সমর্থনকারী লাইব্রেরি (যেমন mongodb
লাইব্রেরি) ব্যবহার করতে পারেন। এটি MongoDB API-কে সমর্থন করে, যা DocumentDB এর সাথে যোগাযোগ করতে সক্ষম।
ধাপ:
pymongo
লাইব্রেরি ইনস্টল করতে হবে।pip install pymongo -t .
Python উদাহরণ:
import pymongo
import os
def lambda_handler(event, context):
# DocumentDB Endpoint এবং Port
host = os.environ['DOCDB_HOST'] # DocumentDB Endpoint URL
port = "27017" # Default MongoDB port
username = os.environ['DOCDB_USER']
password = os.environ['DOCDB_PASSWORD']
# MongoDB URI (DocumentDB-এর জন্য SSL সক্রিয়)
uri = f"mongodb://{username}:{password}@{host}:{port}/?ssl=true&replicaSet=rs0&readPreference=primary&retryWrites=false"
# MongoDB কানেকশন তৈরি
client = pymongo.MongoClient(uri)
# ডেটাবেস এবং কোলেকশন নির্বাচন
db = client['yourDatabase']
collection = db['yourCollection']
# ডেটা ইনসার্ট করা
result = collection.insert_one({"name": "Lambda Example", "message": "Hello, DocumentDB!"})
return {
'statusCode': 200,
'body': f"Document inserted with id: {result.inserted_id}"
}
এখানে:
pymongo
লাইব্রেরি ব্যবহার করে DocumentDB এর সাথে সংযোগ করা হচ্ছে।DocumentDB একটি VPC (Virtual Private Cloud)-এর মধ্যে কাজ করে, তাই Lambda ফাংশনকে সেই VPC-এর মধ্যে সংযুক্ত করতে হবে। আপনি যদি Lambda ফাংশনটি VPC এর মধ্যে সংযুক্ত না করেন, তবে এটি DocumentDB এর সাথে যোগাযোগ করতে পারবে না।
ধাপ:
DocumentDB এর সাথে সংযোগ করতে আপনার Lambda ফাংশনে environment variables সেট করতে হবে, যেমন:
DOCDB_HOST
: DocumentDB ক্লাস্টারের endpoint।DOCDB_USER
: DocumentDB ব্যবহারকারীর নাম।DOCDB_PASSWORD
: DocumentDB পাসওয়ার্ড।AWS Management Console এ Lambda ফাংশনের Environment variables সেকশনে এগুলি যোগ করুন।
Lambda ফাংশনটিকে একটি ট্রিগার দ্বারা চালিত করতে হবে। আপনি বিভিন্ন ধরণের ট্রিগার সেট করতে পারেন, যেমন:
API Gateway Example: Lambda ফাংশনটি HTTP অ্যাপ্লিকেশনের অংশ হিসেবে কাজ করতে পারে, যেখানে API Gateway দিয়ে HTTP রিকোয়েস্টগুলি Lambda ফাংশনের কাছে পাঠানো হবে।
Lambda ফাংশনের খরচ এবং কর্মক্ষমতা অপটিমাইজ করতে আপনি নিম্নলিখিত বিষয়গুলো লক্ষ্য করতে পারেন:
AWS Lambda এবং Amazon DocumentDB এর সংযোগ একটি শক্তিশালী এবং স্কেলেবল সমাধান প্রদান করে, যা ডেটাবেস অপারেশনগুলোকে স্বয়ংক্রিয় করতে সাহায্য করে। Lambda ফাংশন ব্যবহারের মাধ্যমে আপনি DocumentDB-এ ডেটা ইনসার্ট, আপডেট, ডিলিট এবং আরও অনেক ধরনের অপারেশন সম্পাদন করতে পারেন। সঠিকভাবে VPC কনফিগারেশন, IAM রোল এবং নিরাপত্তা সেটিংস কনফিগার করে আপনি একটি সুরক্ষিত এবং পারফরম্যান্স-অপটিমাইজড ফাংশন তৈরি করতে পারবেন।
common.read_more